毕业生说 | 乘风翱翔凌云志,初心不改胜少年
■ 荣宇阳
■ 信息学院2015级计算机科学专业本科生
■ 来自江苏泰州,母校中学是泰州中学
■ 兴趣爱好:美食、科幻、射击
■ 毕业去向:加州大学戴维斯分校(UC Davis)计算机科学PhD(全奖)
◆毕业寄语◆
在上科大的这四年,让我懂得自由并不是为所欲为,而是一种可以做出选择,并且坚持自己的选择不后悔的状态。
在空中俯瞰洛杉矶城
高考后我为选择读哪所高校的问题和父亲意见不同。父亲认为有意向的两所传统高校虽然并非顶尖,但也不差,将来在国内找个不错的工作不成问题。但我才不要“混得不错”,上科大对我的吸引力远比另两所高校大得多。“还是由你自己决定吧!”父亲看我如此坚定,终于同意了我的选择。
上科大多样化的课程令人眼花缭乱
2016年夏摄于芝加哥大学
“上了大学你就自由了”这样的话曾让我无比痴迷。但到了上科大我才发现,一切都要看你是如何定义“自由”的。在上科大,充实而多样化的课程,让我刷新了对“自由”的理解。在完成必修课之后,可供选择的课程让人眼花缭乱。
上科大的专业课非常能学以致用,就像是为日后的科研工作做初始化准备一样。印象颇深的是我选择宋富教授的课程《编译原理》和杨智策教授的《计算机网络》。
《编译原理》课上老师的授课方式不仅仅用教科书,还有时下最新的工具LLVM。他告诉我们编译器的理论是什么样,还会让我们明白在现实中前后端分离是怎么做的,中间层展示又如何能做到LLVM简洁。老师还选取了最近两年国际顶会的文章,他提出我们可以自读并当着全班作展示,并提供额外的分数。这样的教学方式是我之前从来没有想过的。但亲历一次以后你就会发现,当你要面对30个人作展示,还要准备好应对他们的所有问题——还有什么比这种更高效的学习方法呢?
《计算机网络》则更加硬核,老师要求我们用音频线和声音信号“重新发明网络”。从物理层、链路层、网络层全部都靠我们从零到一重新实现;传输频率、物理包头、数据包结构、阻塞控制等细节还要“因地制宜”,根据音频的物理特性重写。而项目描述更是天马行空:没有规定的算法,也不限制编程语言,只讲我们如何评价这个系统——如何实现这个系统是我们的自由。最终,凭借Java,我们的网络延迟只有50毫秒,带宽则有30kbps(略逊于拨号上网的带宽,主要受限于声音频率上限)。到了期末,当我们的一个只接着音频线的笔记本,从互联网完整无缺地收到数千字符样例文章的时候,我们发现相比其他本科生,我们对网络的理解,要来得更为透彻和深入。
选修课里我尤为喜欢《美国历史》。来自英孚的外教第一次让我意识到原来历史不是事件的堆叠。在课上,老师会给我们阅读英文文献、文学作品,带领我们欣赏绘画作品,还会让我们观看纪录片、视频,启发我们从各个角度来理解一个历史事件。从被动填鸭变成了主动查找,有时候为了一份作业我不得不援引《全球通史》、《1787年之夏——缔造美国宪法的人们》等历史文献。除此之外,还要用英语写报告和做展示任务。选一门历史课,还能拓展英语听说读写全方面的能力,让我颇为惊喜。
产业实践代表共享经济组作成果展示
大学里有一半的乐趣都在实验室中
大学里有一半的乐趣都在实验室中,而在上科大尤甚。得益于上科大超高的师生比,本科生进实验室轻而易举。而这也是我第一次真切地体验到大学学术的自由。
大二夏天,我和朋友找到师泽仁教授——我们想用多个机器人完成平面建图。他很开心看到我们的想法,当即借给我们两台机器人和激光传感器,放手让我们去做。整个夏天我都和朋友在实验室里鼓捣如何让机器人们协作、通信……也得益于这次机会,之后当实验室和ABB有合作的时候,我们主动请缨,加入合作项目,去帮助他们实现一个可以建图和导航的移动机器人。
在ABB,我们专注于如何将移动机器人和机械臂结合。我们给移动机器人安装了Velodyne32激光来建图,又加上了多个小型单线激光来检测小范围的环境。完成了硬件安装之后,我们又在ROS上写了控制机器人状态的有限状态机,以及在两个机器人之间通讯的接口。最终,我们教会了机器人自主寻路,并用他的机械臂开关灯。
2018年夏天,我到UCLA参与和网络相关的暑期科研。这一切的实现,得益于上科大和UCLA的合作给我带来的便利条件。能进入UCLA,亲眼见到在当今互联网中至关重要的华人张丽霞教授,甚至和她肩并肩为最新的网络架构——命名数据网络——工作,是我曾经想都不敢想的。“我这里有很多项目,但选哪个是你的自由”,张丽霞教授在第一个星期结束时对我如是说。所以我选择了安卓开发——尽管新型的网络构架有着各种各样的优势,但最大的问题在于不够普及。一个夏天,我把不少现有架构移植到了安卓上。
在去UCLA之前,我有幸加入了陈浩教授的课题组,探索如何才能让自动化的软件测试更加准确高效。于是刚回国我就进了陈浩教授的课题组。我们一步步地缩小范围,最终将目标放在寻找软件中的整数错误上。而当我真正开始写代码、做实验的时候才发现,不少技能都是我在《编译原理》或者其他课程上早已学过或者用过的。
在UCLA进行暑研成果展示
致谢
对于未来发展道路的选择,我要感谢教授们的指点和帮助。每次我敲定某项方案,陈浩教授都会仔细问我这样做的理由是否充分,是否预见到可能出现的问题。杨智策教授在《计算机网络》上给我们布置的声音网络项目,给了我们实现方法的自由。他不在意我们的方式方法,而是要求我们的网络能提供100%正确的传输,哪怕错位一个字节都是零分。在我们需要帮助的任何时候,师泽仁教授总是欣然前来,同时对细节精益求精。现在想来,这些教授对我最大的触动就是,将对学术自由的追求和严谨的治学态度相结合。
我最终能去戴维斯读博士,和我周围很多人的帮助密不可分,没有他们我不可能取得现在的成绩。我要感谢陈浩老师、师泽仁老师和王浩老师,他们给我在科研上的指导让我最终选择了读博士而非硕士。我同样要感谢廖奇峰老师、宋富老师和杨智策老师,听他们上课、和他们谈心让我收获颇多。同学们也给我提供了很多帮助,蔡健雄和我一起完成了多个课程的项目代码,除了多机器人建图,还有声音网络、编译原理、计算机视觉等,我在他身上学到的东西甚至堪比一门专业课;庞安琪、王贺和谢志强在我学业上给我提供的激励和帮助也意义重大,我们总在期末考试前结伴复习、互测;我也很感激学长陈鹏和刘健中为我本科期间第一篇论文提供的意见和帮助。最后我还要感谢我的父母这么多年的付出,上海科技大学和信息学院对我的培养,为我提供的宝贵机会。
上科大第一届校运会
毕业季系列往期文章回顾